home *** CD-ROM | disk | FTP | other *** search
/ Cre@te Online 2000 December / Cre@teOnline CD05.iso / MacSoft / XML ConsoleMax.sea / XML ConsoleMax / Required / esc.jar / com / extensibility / esc / OrdVector.class (.txt) < prev    next >
Encoding:
Java Class File  |  2000-06-30  |  1.5 KB  |  58 lines

  1. package com.extensibility.esc;
  2.  
  3. import java.util.Vector;
  4.  
  5. public class OrdVector {
  6.    protected Vector ordVect;
  7.    protected boolean ascending;
  8.  
  9.    public OrdVector(boolean var1) {
  10.       this.ordVect = new Vector();
  11.       this.ascending = var1;
  12.    }
  13.  
  14.    public OrdVector(int var1, boolean var2) {
  15.       this.ordVect = new Vector(var1);
  16.       this.ascending = var2;
  17.    }
  18.  
  19.    public OrdVector(int var1, int var2, boolean var3) {
  20.       this.ordVect = new Vector(var1, var2);
  21.       this.ascending = var3;
  22.    }
  23.  
  24.    public synchronized void addElement(Object var1) {
  25.       Object var2 = null;
  26.       if (var1 instanceof String) {
  27.          var2 = new StringOrdData((String)var1);
  28.       } else {
  29.          var2 = var1;
  30.       }
  31.  
  32.       this.ordVect.insertElementAt(var2, this.getPos(var2));
  33.    }
  34.  
  35.    public boolean isAscending() {
  36.       return this.ascending;
  37.    }
  38.  
  39.    public Vector getOrdVect() {
  40.       return this.ordVect;
  41.    }
  42.  
  43.    protected int getPos(Object var1) {
  44.       int var2 = this.ordVect.size();
  45.       Object[] var3 = new Object[var2];
  46.       this.ordVect.copyInto(var3);
  47.  
  48.       int var4;
  49.       for(var4 = 0; var4 < var2; ++var4) {
  50.          if (this.ascending && ((Ordered)var1).isLessOrEqualThan((Ordered)var3[var4]) || !this.ascending && !((Ordered)var1).isLessOrEqualThan((Ordered)var3[var4])) {
  51.             return var4;
  52.          }
  53.       }
  54.  
  55.       return var4 == var2 ? var4 : 0;
  56.    }
  57. }
  58.